package com.szcinda.service.dto.organization;

import com.szcinda.repository.Organization;
import com.szcinda.repository.User;

import java.util.List;

public interface OrganizationService {
    void create(OrganizationCreateDto createDto);

    void update(OrganizationUpdateDto updateDto);

    void delete(String id, String userId);

    List<OrganizationTree> findTree();

    List<OrganizationTree> findCurrentTree(String userId);

    List<String> getChildOrgIds(String orgId);

    List<String> getAllOrgIds();

    List<String> getOrgIdsByUserId(String userId);

    OrganizationTree findCurrentTreeByOrgId(String orgId);

    List<Organization> getAllByIds(List<String> ids);

    Organization getById(String id);

    void use(String id);

    void unused(String id);

    List<User> getUsers(String userId);

    List<Organization> getAll();
}
